using MESBaseis.Domain.BaseEntities;

namespace MESBaseis.Domain.ZSHH
{
    /// <summary>
    /// 物品表
    /// </summary>
    public class Item : BaseModel
    {
        /// <summary>
        /// 物品编号
        /// </summary>
        public string ItemNumber { get; set; } = string.Empty;

        /// <summary>
        /// 物品名称
        /// </summary>
        public string ItemName { get; set; } = string.Empty;

        /// <summary>
        /// 规格型号
        /// </summary>
        public string SpecificationModel { get; set; } = string.Empty;

        /// <summary>
        /// 单位
        /// </summary>
        public string Unit { get; set; } = string.Empty;

        /// <summary>
        /// 物品类别 (原材料、半成品、成品)
        /// </summary>
        public string ItemCategory { get; set; } = string.Empty;

        /// <summary>
        /// 物品分类 (电子产品、家具、衣物、食品、化妆品等)
        /// </summary>
        public string ItemClassification { get; set; } = string.Empty;

        /// <summary>
        /// 品牌
        /// </summary>
        public string? Brand { get; set; }

        /// <summary>
        /// 采购单价
        /// </summary>
        public decimal? PurchaseUnitPrice { get; set; }

        /// <summary>
        /// 销售单价
        /// </summary>
        public decimal? SalesUnitPrice { get; set; }

        /// <summary>
        /// 是否启用
        /// </summary>
        public bool IsActive { get; set; } = true;

        // 导航属性
        public virtual ICollection<ItemInventory> Inventories { get; set; } = new List<ItemInventory>();
        public virtual ICollection<SalesOrderItem> SalesOrderItems { get; set; } = new List<SalesOrderItem>();
        public virtual ICollection<ProductionPlanItem> ProductionPlanItems { get; set; } = new List<ProductionPlanItem>();
    }
}